3.2 linux常见符号

学习目标:

  1. 掌握 两种重定向符号的格式和使用场景
  2. 掌握 管道符的特点和使用
  3. 掌握 后台展示符号的意义和作用
  4. 掌握 信息符号的作用和使用场景

3.2.1 重定向符号

在shell脚本中有两种常见的重定向符号 > 和 >>

">" 符号 作用:

">" 表示将符号左侧的内容或者输出结果,以覆盖的方式输入到右侧文件中

查看文件内容

admin-1@ubuntu:~$ cat file.txt
nihao

使用重定向符号给文件中增加内容

admin-1@ubuntu:~$ echo "file1.txt" > file.txt
再次查看文件内容
admin-1@ubuntu:~$ cat file.txt
file1.txt

">>" 符号 作用: ">>" 表示将符号左侧的内容,以追加的方式输入到右侧文件的末尾行中 查看文件内容

admin-1@ubuntu:~$ cat file.txt
file1.txt

使用重定向符号给文件中增加内容

admin-1@ubuntu:~$ echo "file2.txt" >> file.txt
admin-1@ubuntu:~$ cat file.txt
file1.txt
file2.txt

3.2.2 管道符 |

定义: | 这个就是管道符,传递信息使用的

使用格式: 命令1 | 命令2
管道符左侧命令1执行后的结果作为输入传递给右侧的命令2使用

命令演示: 查看当前系统中的全局变量SHELL

admin-1@ubuntu:~$ env | grep SHELL
SHELL=/bin/bash

3.2.3 其他符号

  1. 后台展示符号 &(跟在一条命令之后,将一个命令从前台转到后台执行)
    使用格式: 命令 & 使用sleep命令使终端界面阻塞4秒,使用当前进程执行
    admin-1@ubuntu:~# sleep 4
    
    在命令之后添加 &开启一个新的进程执行,不影响当前进程的操作
    admin-1@ubuntu:~# sleep 10 &
    [1] 4198
    admin-1@ubuntu:~# ps aux | grep sleep
    root       4198  0.0  0.0   9032   808 pts/17   S    21:58   0:00 sleep 10
    root       4200  0.0  0.0  15964   944 pts/17   S+   21:58   0:00 grep --color=auto sleep
    
  2. 全部信息符号 2>&1 符号详解: 1 表示标准输出的信息 2 表示标准错误的信息 2>&1 代表所有输出的信息 符号示例 标准正确输出示例
    cat nihao.txt 1>> zhengque
    
    标准错误输出示例(不存在itcast命令,会报错)
    itcast 2>> errfile
    
  3. 综合演练示例 脚本内容
    #!/bin/bash
    echo '下一条错误命令'
    dsfsafsafdsa
    
    脚本执行效果
    admin-1@ubuntu:~# bash ceshi.sh
    下一条错误命令
    ceshi.sh: line 3: dsfsafsafdsa: command not found
    
    1 和 2 综合演练
    admin-1@ubuntu:~# bash ceshi.sh 1>> ceshi-ok 2>> ceshi-err
    admin-1@ubuntu:~# cat ceshi-ok
    下一条错误命令
    admin-1@ubuntu:~# cat ceshi-err
    ceshi.sh: line 3: dsfsafsafdsa: command not found
    
    全部信息演练
    admin-1@ubuntu:~# bash ceshi.sh >> ceshi-all 2>&1
    admin-1@ubuntu:~# cat ceshi-all
    下一条错误命令
    ceshi.sh: line 3: dsfsafsafdsa: command not found
    
  4. linux系统垃圾桶 /dev/null 是linux下的一个设备文件,这个文件类似于一个垃圾桶,很多不重要的信息可以指向向其重定向
    特点是:容量无限大

3.2小结:

  1. 掌握 两种重定向符号的格式和使用场景
  2. 掌握 管道符的特点和使用
  3. 掌握 后台展示符号的意义和作用
  4. 掌握 信息符号的作用和使用场景